package com.eidos.blogs.openapi.service.seckill;

import com.eidos.blogs.openapi.dto.secKill.GenerateRedEnvelopeDto;
import com.eidos.blogs.openapi.entity.seckill.RedeReceiveRecord;
import com.eidos.blogs.openapi.thread.seckill.TaskBackHandler;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * @author ： Eidos
 * @date ：Created in 2021/1/12
 * @description：
 * @modified By：
 * @version: 1.0
 */
public interface IRedeReceiveRecordService extends IService<RedeReceiveRecord> {

    /**
     * 红包信息表分页列表
     *
     * @param param 根据需要进行传值
     * @return
     */
    IPage<RedeReceiveRecord> page(RedeReceiveRecord param);

    /**
     * 红包信息表详情
     *
     * @param id
     * @return
     */
    RedeReceiveRecord info(Long id);

    /**
     * 红包信息表新增
     *
     * @param param 根据需要进行传值
     * @return
     */
    void add(RedeReceiveRecord param);

    /**
     * 红包信息表修改
     *
     * @param param 根据需要进行传值
     * @return
     */
    void modify(RedeReceiveRecord param);

    /**
     * 红包信息表删除(单个条目)
     *
     * @param id
     * @return
     */
    void remove(Long id);

    /**
     * 删除(多个条目)
     *
     * @param ids
     * @return
     */
    void removes(List<Long> ids);


    List<RedeReceiveRecord> queryRedeReceiveRecordListByRedEnvelopeId(GenerateRedEnvelopeDto dto, TaskBackHandler<List<RedeReceiveRecord>> callback);

}
